<?php 
/**
 * 列表页控制器
 * @author 阿柱 <422852954@qq.com>
 */
class ListController extends CommonController{
    public function index(){
//		判断session
		$this->judgeSession();
		
//		导航条内容处理Start***************
//		导航条头部的问题库
		$this->topCate();
//		导航条右侧的累计提问数
		$this->topCount();
//		导航条处理结束End*************
		
		//右侧数据数据处理Start**********		
		//今日之星
		$this->dayStar();		
		//历史回答最多的人
		$this->historyStar();		
		//历史帮助最多的人
		$this->helpPeople();
		//右侧数据数据处理End**********
		
//		获取cid
		$cid=isset($_GET['cid'])? $_GET['cid'] : 0;
//		处理面包屑导航
//		就是找父级的过程，需要用递归，因为不确定有多少个父级
//		1.将所有的分类查询出来
		$sql="SELECT * FROM hd_category";
		$data=M()->query($sql);
		$fatherCate=$this->_fatherCate($data, $cid);
//		数组反转
		$fatherCate=array_reverse($fatherCate);

		$this->assign('fatherCate',$fatherCate);
		
//		处理按分类查找部分
//		找到同级的分类！！！！！！！
		$sonCate=M()->query("SELECT * FROM hd_category WHERE pid={$cid}");
//		p($sonCate);
//		什么时候才为空呢，那就是找分类表中是否有pid为当前选中cid的他是一个空数组
		if(empty($sonCate)){
//			停留到当前的级！！！！！！！！
			$pid=M()->query("SELECT * FROM hd_category WHERE cid={$cid}");
//			将$pid的覆盖把值赋给$pid
			$pid=$pid[0]['pid'];
//			查询所有为pid为$pid的分类
			$sonCate=M()->query("SELECT * FROM hd_category WHERE pid={$pid}");
		}
//		分配中部分类变量
		$this->assign('sonCate',$sonCate);
		
//		查询问题(待解决、已解决、高悬赏、零回答)
		$w=isset($_GET['w'])? $_GET['w'] : 0;
		switch ($w) {
			case 1:
				$where="solve=1";
				break;
			case 2:
				$where="reward>20 AND solve=0";
				break;
			case 3:
				$where="answer=0";
				break;
//			默认的访问待解决的问题
			default:
				$where="solve=0";
				break;
		}
//		判断点击的是否为全部分类
		if($cid==0){
//			如果点击的顶级分类的话就把所有的问题查询出来
			$sql="SELECT * FROM hd_ask as a JOIN hd_category as c on a.cid=c.cid where {$where}";
		}else{
			$sql="SELECT * FROM hd_ask as a JOIN hd_category as c on a.cid=c.cid where {$where} and a.cid={$cid} LIMIT 4";	
		}
		
//		p($sql);
		$askData=M()->query($sql);

//		分配变量
		$this->assign('askData',$askData);
//		p($askData);
		
		
		
    	$this->display('list.html');
    }
	

	
 }
 
 
 
 
 
 
 
 
 
 
 



 ?>